<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    // var arr = ['a', 'b', 'c']

    // // 参数: 回调函数, 每次循环执行一次
    // //    回调函数的参数: 
    // //     参数1: 遍历到的元素
    // //     参数2: 索引
    // //     参数3: 数组本身
    // arr.forEach(function (item, index, arr) {
    //   console.log(item, index)
    // })

    // var arr = ['传智播客', '黑马程序员', '某内', '某鸟', '某峰']
    // // 字符串长度大于3的数据

    // // 参数: 回调函数, 每次循环执行一次
    // //    回调函数的参数: 
    // //     参数1: 遍历到的元素
    // //     参数2: 索引
    // //     参数3: 数组本身
    // //    回调函数需要 boolean 类型的返回值
    // // 返回值: 新数组, 筛选后的新数组
    // var newArr = arr.filter(function (item, index) {
    //   // return true // 不过滤 把所有的元素都放入新数组并返回
    //   return item.length > 3
    // })

    // console.log(newArr)

    var arr = [0, 2, 1, 3, 5, 7, 2, 8, 10]
    // 判断数组中是否有奇数

    // 参数: 回调函数, 每次循环执行一次
    //    回调函数的参数: 
    //     参数1: 遍历到的元素
    //     参数2: 索引
    //     参数3: 数组本身
    //    回调函数需要 boolean 类型的返回值
    // 返回值: boolean 值, 表示是否有满足条件的元素
    var hasOdd = arr.some(function (item, index) {
      // 一旦返回有 true 就不会继续后续的循环
      // console.log(index)
      return item % 2 != 0
    })

    console.log(hasOdd)
  </script>
</body>

</html>